package com.yang.Offer;

public class Offer14 {
}
// 割绳子
class SolutionOffer14 {
    public int cuttingRope(int n) {
        // 根据均值不等式，得出 绳子最好是切割成 3的长度最好
        //如果切完剩下一个1 那么我们可以让一个3 和1组合变成 4  如果切剩下一个2  那么我们就直接乘这个2
        if (n == 2){
            return 1;
        }
        if (n == 3){
            return 2;
        }
        // 直接除就得到按照3能够分成的段数
        int res = n/3;
        // 取余得到按照3等分后能够剩下的余数
        int mod = n%3;
        if (mod == 1){
            return (int)Math.pow(3, res - 1) * 4;
        }
        else if (mod == 2){
            return (int)Math.pow(3, res) * 2;
        }else {
            return (int)Math.pow(3, res);
        }

    }
}
